﻿
$(document).ready(function(){
	
	var form = $("#contactform");
	
	var loginname = $("#loginname");
	var loginnameInfo = $("#loginnameInfo");
	
	var pwd = $("#pwd");
	var pwdInfo = $("#pwdInfo");
	
	
	var pwdok = $("#pwdok");
	var pwdokInfo = $("#pwdokInfo");
	
	
	var email = $("#email");
	var emailInfo = $("#emailInfo");
	
	
	var name = $("#name");
	var nameInfo = $("#nameInfo");
	
	var company = $("#company");
	var companyInfo = $("#companyInfo");
	
	var phone = $("#phone");
	var phoneInfo = $("#phoneInfo");
	
	var fax = $("#fax");
	var faxInfo = $("#faxInfo");
	
	var validate = $("#validate");
	var validateInfo = $("#validateInfo");
	
	
	
	
	//On blur
	loginname.blur(validateNameAjax);
	pwd.blur(validatePwd);
	pwdok.blur(validatePwdok);
	email.blur(validateEmail);
	name.blur(validateName);
	company.blur(validateCompany);
	phone.blur(validatePhone);
	fax.blur(validateFax);
	validate.blur(validateImage);
	
	//On key press
	loginname.keyup(validateLoginName);
	pwd.keyup(validatePwd);
	pwdok.keyup(validatePwdok);
	email.keyup(validateEmail);
	name.keyup(validateName);
	company.keyup(validateCompany);
	phone.keyup(validatePhone);
	fax.keyup(validateFax);
	validate.keyup(validateImage);
	
	
	
	//表单提交
	form.submit(function(){
		if( validateLoginName() &  validatePwd() & validatePwdok() &validateEmail()& validateName()&validateCompany()&validatePhone()&validateFax()&validateImage())
		{
			//alert(0);
			//这个是ajax验证，文本块失去焦点时和提交时触发，文本框键入时不触发。
			//async: false,      //ajax同步 , 必须同步
			//这里的ajax验证必须设置成同步
			if(validateNameAjax())
			{
				//alert(1);			
				if(validateImageAjax())
				{
					//alert(2);
					return true;
				}
			}
		}
		return false;
	});	
	
	
	
	function validateLoginName(){
	
		var temp=$("#loginname").val();		
		var filter = /^\w{6,18}$/;
		if(filter.test(temp)){
			loginname.removeClass("error");
			loginnameInfo.text("");
			loginnameInfo.removeClass("error");
			return true;
		}else{			
			loginname.addClass("error");
			loginnameInfo.text("");
			loginnameInfo.addClass("error");
			return false;
		}
	
	
	};
	
	function validatePwd(){
		var temppwd = $("#pwd");		
		if(temppwd.val().length <6){		
			pwd.addClass("error");
			pwdInfo.text("");
			pwdInfo.addClass("error");
			return false;
		}else{			
			pwd.removeClass("error");
			pwdInfo.text("");
			pwdInfo.removeClass("error");
			validatePwdok();
			return true;
		}
	}
	function validatePwdok(){
		var temppwd = $("#pwd");
		var temppwdok = $("#pwdok");
		
		if( temppwd.val() != temppwdok.val()){
			pwdok.addClass("error");
			pwdokInfo.text("");
			pwdokInfo.addClass("error");
			return false;
		}else if(temppwdok.val().length<=0 )
		{
			pwdok.addClass("error");
			pwdokInfo.text("");
			pwdokInfo.addClass("error");
			return false;
		}else{
			pwdok.removeClass("error");
			pwdokInfo.text("");
			pwdokInfo.removeClass("error");
			return true;
		}
	}
	
	
	function validateEmail(){
		
		var temp = $("#email").val();
		
		if(temp.length>50)
		{
			email.addClass("error");
			emailInfo.text("");
			emailInfo.addClass("error");
			return false;
		}
		//var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+[a-zA-Z0-9_-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{2,4}$/;
		var filter =/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
		if(filter.test(temp)){
			email.removeClass("error");
			emailInfo.text("");
			emailInfo.removeClass("error");
			return true;
		}else{
			email.addClass("error");
			emailInfo.text("");
			emailInfo.addClass("error");
			return false;
		}
	}
	
	
	function validateName(){
			//var filter=/[^\u0000-\u00FF]/;
			//var temp=$("#name").val();
			
			var temp=$("#name").val();
			
			if(temp.length<50&temp.length>0)
			{
				name.removeClass("error");
				nameInfo.text("");
				nameInfo.removeClass("error");
				return true;
				
			}else
			{
				name.addClass("error");
				nameInfo.text("");
				nameInfo.addClass("error");
				return false;
			}
		
	}
	
	
	//留着以后扩展
	function validateCompany(){return true};
	function validatePhone(){return true};
	function validateFax(){return true};
	
	function validateImage(){
	
			var temp=$("#validate").val();
			var filter = /^\d{4}$/;
			if(filter.test(temp))
			{
				validate.removeClass("error");
				validateInfo.text("");
				validateInfo.removeClass("error");
				return true;
				
			}else
			{
				validate.addClass("error");
				validateInfo.text("");
				validateInfo.addClass("error");
				return false;
			}
		
	
	};
	
////////////////////////////////////////////////////////////////


//ajax验证用户名是否存在
function validateNameAjax()
{
	var flag=false;
	var temp=$("#loginname").val();		
	var filter = /^\w{6,18}$/;
	if(filter.test(temp)){	
		$.ajax({
		   url: '/econtact/user/validateNameAjax.action',   //接收页面  
           type: 'post',      //POST方式发送数据  
           async: false,      //ajax同步 , 必须同步
           dataType:"json", 
           data: { "name": temp },  
           success:  function(returnValue){	   
		    	if(returnValue==false)
		    	{
		    		//alert("a");
		    		loginnameInfo.text("");
					loginnameInfo.removeClass("error");
					loginname.removeClass("error");
					//return true;
					flag=true;
		    	}else
		    	{
		    		//alert("b");
		    		//用户已经存在
		    		loginname.addClass("error");
					loginnameInfo.text("");
					loginnameInfo.addClass("error");
					//return false;
					flag=false;
		    	}
	  		}
		});
	}else
	    	{
	    	//alert("b");
	    		//用户已经存在
	    		loginname.addClass("error");
				loginnameInfo.text("");
				loginnameInfo.addClass("error");
				//return false;
				flag=false;
	    	}
	
	//alert(flag+"####");
	return flag;
}




//ajax验证验证码
function validateImageAjax()
{
	var bo=false;
		var temp=$("#validate").val();
			var filter = /^\d{4}$/;
			if(filter.test(temp))
			{
					$.ajax({
					url: '/econtact/user/registrationValidateImageAjax.action',   //接收页面  
          			type: 'post',      //POST方式发送数据  
           			async: false,      //ajax同步 , 必须同步
           			dataType:"json",  
          			data: { "validate": temp },  
           			success:  function(returnValue){  
				 //alert(returnValue);
			    	if(returnValue==false)
			    	{
			    	//alert("1");
			    		validate.removeClass("error");
						validateInfo.text("");
						validateInfo.removeClass("error");
						//return true;
						bo=true;
			    	}else
			    	{
			    	//alert("2");
			    		//验证码错误
			    		validate.addClass("error");
						validateInfo.text("");
						validateInfo.addClass("error");
						//return false;
						bo=false;
			    	};
		  		 }
				})			
			}else
			{
				validate.addClass("error");
				validateInfo.text("");
				validateInfo.addClass("error");
				//return false;
				bo=false;
			}
	//alert(bo+"@@@@@");
	return bo;
	}

});